/**
 * 页面跳转与参数传递
 */
const History = {getUrlParams};

/**
 * 解析请求参数
 * @param page Puppeteer框架的页面
 */
function getUrlParams(page) {
  //页面地址
  let href = page.target()._targetInfo.url;
  let result = '';
  //参数数组
  let paramsArray = null;
  //使用webpack服务时,url中可能有多个?,选最好的?即可
  let index = href.lastIndexOf('?');
  if (index >= 0) {
    paramsArray = href.substring(index + 1, href.length);
    paramsArray = paramsArray.split('&');
    result = {};
  } else {
    return result;
  }
  //遍历参数数组,并进行加密
  paramsArray.forEach((key) => {
    let keyArray = key.split('=');
    //参数名
    let k = keyArray[0];
    //参数值,使用decodeURIComponent对encodeURIComponent编码进行解码
    let v = decodeURIComponent(keyArray[1]);
    result[k] = v;
  });

  return result;
}

module.exports = History;
